package homework.day03;

import java.io.*;

/**
 * 扫描指定目录中的所有.java文件，并将内容全部输出到控制台
 *
 * 例如将当前项目目录下src/io目录中的所有java文件内容输出
 * 到控制台
 *
 * 1:先要定位./src/io目录(哪个API用来描述目录?)
 * 2:获取该目录下的所有.java文件
 * 3:遍历每一个java文件，然后按行读取里面的每一行字符串
 *   并输出控制台
 *
 *
 * @author Xiloer
 *
 */
public class Text03 {
    public static void main(String[] args) throws IOException {

        // 提示代码:
        //需要用到的语句，尝试按照正确顺序将下列代码并放在main方法中完成需求，
        //并在注释中标注每句话的作用，

        //定位文件所在位置，创建文件对象
        File dir = new File("./src/main/java/io");


        //筛选文件对象
        File[] subs = dir.listFiles(f->f.getName().endsWith(".java"));

        //遍历筛选后的文件对象
        for(int i=0;i<subs.length;i++){

            //获取文件对象
            File sub = subs[i];

            //创建缓冲字符输入流,继承字符输入流，继承字节输入流
            BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(sub)));



            //定义line用来储存每一行的输入字符
            String line;
            //判断输入的字符是否为空，为空则到达最后一行退出循环
            while((line = br.readLine())!=null){
                //输出读取的每一行字符
                System.out.println(line);

            }

        }











    }

}
